home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 038a / qbrv1_2.zip / QBRENUM.DOC < prev    next >
Text File  |  1991-11-20  |  30KB  |  958 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.            ================================================================
  26.  
  27.                    T H E   Q U I C K   B A S I C   R E N U M B E R
  28.  
  29.                                     U T I L I T Y
  30.  
  31.                               U S E R ' S   M A N U A L
  32.  
  33.                                   by Richard Z. Ward
  34.  
  35.                                      Version 1.2
  36.  
  37.                                 PC/MS-DOS 2.0 or Later
  38.  
  39.  
  40.            (C) Copyright 1988-1991 by Richard Z. Ward, All Rights Reserved
  41.  
  42.            ================================================================
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.            
  54.            L I C E N S E   A G R E E M E N T ------------------------------
  55.  
  56.  
  57.           --------- A Limited License
  58.             
  59.           A limited license is granted to all users of the program to make
  60.           copies of the program and the accompanying documentation and to
  61.           distribute them to other users under the following restrictions: 
  62.            
  63.           1. Neither a fee nor any other consideration may be charged for
  64.           copying or distributing the program without the express written
  65.           permission from Richard Z. Ward. 
  66.            
  67.           2. The program and its documentation may not be distributed in
  68.           modified forms. 
  69.  
  70.            
  71.           --------- Shareware Registration
  72.  
  73.           The Quick BASIC Renumber Utility is the result of many hours of
  74.           work.  If you find it useful, please register your copy of the
  75.           program.  To register, fill out a hard copy of the ORDERFRM.DOC
  76.           file, write a check for $12.50 to Richard Z. Ward, and send the
  77.           form and check to the following address:
  78.  
  79.                Richard Z. Ward / WARDCO
  80.                P.O. Box 454
  81.                Belmont, MA 02178
  82.  
  83.           You will then receive a newly serialized copy of the program and
  84.           a complete set of printed instructions.  As a registered user,
  85.           you will be notified of all future updates to the program; the
  86.           first update from the version you registered will be sent to you
  87.           at no charge.
  88.  
  89.  
  90.           --------- User Support and Defects and Enhancements
  91.  
  92.           If you have any suggestions for future versions of the Quick
  93.           BASIC Renumber Utility or find any defects in the existing
  94.           version, please fill out a hard copy of the DEFECTS.DOC file and
  95.           send the form to the above address.
  96.  
  97.           Otherwise, If you are having trouble using the program, please
  98.           send your written questions to the above address.
  99.  
  100.  
  101.  
  102.  
  103.           The Quick BASIC Renumber Utility                     Page 2
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.           --------- Warranty/Liability
  113.  
  114.           Should a Quick BASIC Renumber Utility disk fail due to defects in
  115.           materials or workmanship, it will be replaced at no charge.  No
  116.           other representations or warranties are made, express or implied.
  117.  
  118.           In no event shall Richard Z. Ward be liable for any direct,
  119.           indirect, consequential or incidental damages arising from the
  120.           use of the Quick BASIC Renumber Utility. 
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.           The Quick BASIC Renumber Utility                     Page 3
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.           The Quick BASIC Renumber Utility -------------------------------
  173.  
  174.  
  175.           --------- Introduction
  176.  
  177.           The Quick BASIC Renumber Utility (QBRENUM) has been designed to
  178.           renumber IBM and Microsoft BASIC source files compatible with the
  179.           QuickBASIC compilers (versions 1-4.5), the Business BASIC
  180.           compiler, and the BASICA and GWBASIC interpreters.  QBRENUM
  181.           provides many useful features that are currently not supported by
  182.           most BASIC line renumbering programs.
  183.  
  184.           First, QBRENUM can renumber all or just a section of your BASIC
  185.           source file.  When renumbering a section, QBRENUM renumbers each
  186.           line found inside the section and makes the appropriate changes
  187.           to all references to the line in the source file.
  188.  
  189.           Second, QBRENUM can renumber BASIC source files which use both
  190.           line labels and line numbers.  QBRENUM recognizes line labels and
  191.           leaves them and all references to them intact.
  192.  
  193.           Third, QBRENUM can renumber BASIC source files which have non-
  194.           ascending line numbers.  QBRENUM can renumber each numbered line
  195.           to a new ascending order.
  196.  
  197.           Fourth, QBRENUM can insert line numbers before non-numbered lines
  198.           of code.  If your source file contains few or no line numbers,
  199.           inserting line numbers before non-numbered lines may help you
  200.           debug your program.  Since many BASIC compilers reference the
  201.           last line number executed in their error messages, you may be
  202.           able to better identify which line of code is causing the problem
  203.           by inserting line numbers before all non-numbered lines.
  204.  
  205.           Fifth, QBRENUM can remove line numbers from non-referenced lines
  206.           of code.  You may find that having fewer line numbers makes your
  207.           source code easier to read and maintain.  You may also wish to
  208.           remove non-referenced line numbers simply to determine if there
  209.           are any references to a particular line of code.
  210.  
  211.           Sixth, QBRENUM can renumber all source files included by the
  212.           $INCLUDE metacommand.  If your program includes other source
  213.           files using the $INCLUDE metacommand, QBRENUM will renumber the
  214.           primary source file and all of its include files at the same
  215.           time.
  216.  
  217.  
  218.           --------- On-line Instructions
  219.  
  220.           To read the utility's short on-line instructions, type QBRENUM
  221.           with no command parameters.  QBRENUM will display a brief
  222.           description of its functions and a summary of its command
  223.           parameters.
  224.  
  225.           The Quick BASIC Renumber Utility                     Page 4
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.           QBRENUM will also display a limited license agreement and a brief
  235.           message concerning the distribution of the program.  For
  236.           information on how to register your copy of The QBRENUM utility,
  237.           read the User Support and Defects and Enhancements section of
  238.           this document.
  239.            
  240.           It may be useful to send the on-line instructions to your
  241.           printer.  Use the control-P output-to-printer function to do
  242.           this.  The on-line instructions should provide you with a short
  243.           reference sheet.
  244.  
  245.  
  246.           --------- Getting Started
  247.  
  248.           QBRENUM has a command line interface; it uses the command line to
  249.           determine the region of your source file to renumber.  You are
  250.           expected to enter the new starting line number, the old starting
  251.           and old ending line number of the region, and the new line number
  252.           increment.  The default values for these parameters specify an
  253.           entire source file.
  254.  
  255.           The following is the basic form of the QBRENUM command line:
  256.  
  257.           QBRENUM [pth [[newnum][,[fstnum][,[lstnum][,inc]]]] [/CIMRSTX]],
  258.            
  259.           The "pth" argument specifies any legal BASIC source file
  260.           pathname.  Note that QBRENUM requires that the source file be
  261.           saved in ASCII format.
  262.  
  263.           The following are descriptions of the parameters which help
  264.           define the renumber-region:
  265.  
  266.                newnum - This is the new starting line number.  This
  267.                         number replaces the first line number in
  268.                         the renumber-region.
  269.  
  270.                fstnum - This identifies the first number of the renumber-
  271.                         region.
  272.  
  273.                lstnum - This identifies the last number of the renumber-
  274.                         region.
  275.  
  276.                inc    - This is the increment between successive line
  277.                         numbers in the renumber-region.
  278.  
  279.           The /CIMRSTX options are described below.
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.           The Quick BASIC Renumber Utility                     Page 5
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.           --------- Specifying Command Line Parameters
  295.  
  296.           QBRENUM has default values for its parameters.  The following is
  297.           a list of the parameter default values: 
  298.            
  299.                * newnum: 10 
  300.                * fstnum: The first line of the file. 
  301.                * lstnum: The last line of the file. 
  302.                *    inc: 10 
  303.            
  304.           If you do not specify any of these parameters on the command
  305.           line, QBRENUM will renumber your entire source file, using an
  306.           increment of ten and starting the numbering sequence with line
  307.           number ten. 
  308.  
  309.           If, however, you would like to specify some (but not all) of the
  310.           renumber region parameters on the command line, you must supply
  311.           comma delimeters up to your final parameter entry.  For example,
  312.           to use all defaults except to specify an increment of 5 instead
  313.           of 10 on the command line, you must type: 
  314.            
  315.                QBRENUM TEST ,,,5 
  316.            
  317.           Or, to use all defaults except to specify line 50 as the first
  318.           line to be renumbered, you must type: 
  319.            
  320.                QBRENUM TEST ,50  
  321.            
  322.           The highest number that QBRENUM can identify from the command
  323.           line is 65535.  When it encounters a number larger than 65535 on
  324.           the command line, QBRENUM displays an appropriate error message. 
  325.           Please do NOT include commas in any number (i.e. 32,768). 
  326.  
  327.  
  328.           --------- File Extensions
  329.            
  330.           QBRENUM recognizes four file extensions: BAS, BAK, INC and MOD. 
  331.           When no file extension is specified on the command line, QBRENUM
  332.           assumes the BAS extension. 
  333.            
  334.           The MOD file extension refers to a module or subprogram of any
  335.           main BASIC source file.  This file extension makes it easier to
  336.           distinguish modules from main source files.  For more information
  337.           about using BASIC modules, refer to The BASIC Source Merge
  338.           Utility (BASMER) instruction manual. 
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.           The Quick BASIC Renumber Utility                     Page 6
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.           --------- An Example Run
  356.  
  357.           For example, using the following section of the BASIC source file
  358.           TEST.BAS,
  359.  
  360.                10 REM TEST PROGRAM
  361.                20 INPUT I: ON I GOTO 30,40
  362.                30 PRINT "1": GOTO 20
  363.                40 PRINT "2": GOTO 30
  364.                50 PRINT "3": GOTO 40
  365.                60 PRINT "4": GOTO 10
  366.                :
  367.  
  368.           if you were to specify the following command line,
  369.  
  370.                QBRENUM TEST 25,20,40,2
  371.  
  372.           the QBRENUM renumber utility would create the file TEST.RNM;
  373.           TEST.RNM would appear as follows:
  374.  
  375.                10 REM TEST PROGRAM
  376.                25 INPUT I: ON I GOTO 27,29
  377.                27 PRINT "1": GOTO 25
  378.                29 PRINT "2": GOTO 27
  379.                50 PRINT "3": GOTO 29
  380.                60 PRINT "4": GOTO 10
  381.                :
  382.  
  383.  
  384.           --------- The Output Files 
  385.  
  386.           In short, QBRENUM reads the specified source file, renumbers the
  387.           specified section of code and any included files, and saves all
  388.           newly renumbered versions to new output files.  All output files
  389.           are given its corresponding input file's base name with a new
  390.           .RNM file extension.  All renumbered versions of included source
  391.           files (using the $INCLUDE metacommand) are also given the new
  392.           file extension .RNM.
  393.            
  394.           For example, the renumbered version of TEST.BAS is named
  395.           TEST.RNM.
  396.  
  397.           QBRENUM does not change any input source file.
  398.  
  399.  
  400.           --------- Technical Points
  401.  
  402.           QBRENUM's unique renumbering algorithm allows the utility to
  403.           quickly renumber extremely large source files, containing as many
  404.           as 65,535 lines.  The utility's line length limits are large too:
  405.           QBRENUM will renumber source files containing lines with a
  406.           maximum length of 8,200 characters.
  407.  
  408.           The Quick BASIC Renumber Utility                     Page 7
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.           Since it was written entirely in ASSEMBLY language, QBRENUM will
  418.           renumber large source files very quickly.  On an IBM AT, QBRENUM
  419.           renumbers source files of average complexity at a rate of about
  420.           72 physical lines of code per second.
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.           The Quick BASIC Renumber Utility                     Page 8
  470.  
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  
  477.           The Quick BASIC Renumber Utility Options: /CIMRSTX -----
  478.  
  479.  
  480.           --------- Renumber Commented Lines Option /C
  481.  
  482.           The Renumber Commented Lines option instructs QBRENUM to renumber
  483.           line references found in lines commented by REM or '.  If you
  484.           have REMarked any lines of code, you will probably want to use
  485.           this option to maintain the correctness of all line references
  486.           found in commented lines of code.
  487.  
  488.           The QBRENUM default is to ignore all line references found in REM
  489.           and ' statements.
  490.  
  491.  
  492.           --------- Insert Numbered Lines Option /I
  493.  
  494.           The Insert option instructs QBRENUM to insert line numbers before
  495.           non-numbered lines of code.  If, for example, your BASIC program
  496.           contains few line numbers, you may instruct QBRENUM to insert
  497.           line numbers in front of any or all non-numbered lines of code. 
  498.            
  499.           Note that if your BASIC program contains no line numbers, QBRENUM
  500.           can only insert line numbers in front of all lines of code.  To
  501.           insert line numbers in a section of code, simply prefix the lines
  502.           that define the beginning and end of the section with token line
  503.           numbers.  QBRENUM uses line numbers as reference points.  In the
  504.           future, QBRENUM will use physical lines as well as line numbers
  505.           for reference points.
  506.  
  507.           QBRENUM will not insert a line number before a line that begins
  508.           with an ASCII line label.  In the future, the QBRENUM utility
  509.           will be able to exchange line labels for line numbers.
  510.  
  511.  
  512.           --------- Metacommand Preprocessing Option /M
  513.  
  514.           The Metacommand preprocessing option instructs QBRENUM to search
  515.           the source files for the $INCLUDE metacommand and to renumber all
  516.           source files loaded by this compiler preprocessor instruction. 
  517.           QBRENUM includes these source files before renumbering any code.
  518.  
  519.           QBRENUM saves the renumbered code to new files, preserving all
  520.           base names and adding new .RNM file extensions.
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.           The Quick BASIC Renumber Utility                     Page 9
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.           QBRENUM recognizes the following metacommands, which may be
  539.           referenced in the QuickBASIC, Business Basic or IBM Basic
  540.           compiler manuals:
  541.  
  542.           1)   $DYNAMIC       6)   $LINESIZE:n    10)  $INCLUDE: '<file>'
  543.           2)   $STATIC        7)   $PAGESIZE:n    11)  $TITLE: '<text>'
  544.           3)   $PAGE          8)   $PAGEIF:n      12)  $SUBTITLE: '<text>'
  545.           4)   $LIST{+/-}     9)   $SKIP:n        13)  $MODULE: '<file>'
  546.           5)   $OCODE{+/-}
  547.  
  548.           QBRENUM recognizes an $INCLUDE metacommand even when it follows
  549.           any number of the other twelve metacommands on a single line of
  550.           code.  For example, QBRENUM can identify the $INCLUDE metacommand
  551.           in the following line of code:
  552.  
  553.                100 REM $DYNAMIC  $PAGESIZE: 66  $INCLUDE: 'test2' .
  554.  
  555.           In this example, QBRENUM automatically suffixes the 'test2'
  556.           filename with the .BAS file extension and loads the new program
  557.           'test2.bas' module for renumbering.
  558.  
  559.           Note that QBRENUM overwrites output files that have identical
  560.           corresponding input file basenames.  So, make sure all $INCLUDE
  561.           file basenames are unique.
  562.  
  563.           QBRENUM will not recognize an $INCLUDE metacommand which follows
  564.           a syntactically incorrect metacommand.  When QBRENUM finds a
  565.           syntax error in a metacommand, it displays a brief error message
  566.           informing you of the physical line number where the metacommand
  567.           and the rest of the line were ignored.  QBRENUM applies the same
  568.           syntactical rules as does the QuickBASIC, Business Basic and IBM
  569.           Basic compilers.  For instance, QBRENUM ignores all code on the
  570.           same line following the $INCLUDE metacommand.
  571.  
  572.           It is a good idea to remove all line numbers from an INCLUDE file
  573.           which is used by more than one source file.  The newly renumbered
  574.           INCLUDE file may no longer be compatible with the numbering
  575.           scheme of one of the other source files.
  576.  
  577.  
  578.           --------- Relax Line Numbering Constraints Option /R
  579.  
  580.           The Relax line numbering constraints option instructs QBRENUM to
  581.           ignore random line numbering schemes, and to allow you to
  582.           implement a new ascending-ordered numbering scheme.  If, for
  583.           example, your BASIC programs contain line numbers sequenced in
  584.           non-ascending order, you will need to select this option to
  585.           renumber the lines.
  586.  
  587.           QBRENUM does not preserve such line numbering schemes, and
  588.           renumbers such source files in ascending order.
  589.  
  590.  
  591.           The Quick BASIC Renumber Utility                     Page 10
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.           Note that since QBRENUM sorts its line number tables before using
  600.           them, random line numbering schemes do not slow down its line
  601.           renumbering process.  QBRENUM uses the "QuickSort" algorithm to
  602.           sort its tables.
  603.  
  604.  
  605.           --------- Strip Line Numbers from Non-Referenced Lines /S
  606.  
  607.           The Strip line numbers option instructs QBRENUM to remove line
  608.           numbers from non-referenced lines of code.  If, for example, 
  609.           there are no line references in your source file, QBRENUM can
  610.           remove all line numbers.
  611.  
  612.           Note that QBRENUM will remove non-referenced line numbers from
  613.           the renumber region only; QBRENUM leaves all lines of code
  614.           outside the specified renumber region intact.
  615.  
  616.  
  617.           --------- Take-out Extra Spaces After Line Numbers Option /T
  618.  
  619.           The Take-out extra spaces option instructs QBRENUM to take out
  620.           all but one space and all tab characters found between the line
  621.           number and the BASIC code.  This allows you to have QBRENUM left
  622.           justify your code.
  623.  
  624.  
  625.           --------- Exclude Renumbering the File Option /X
  626.  
  627.           The Exclude Renumbering the file option instructs QBRENUM to not
  628.           renumber the specified region.  As the only option specified, the
  629.           /X option renders the QBRENUM utility useful only as a line and
  630.           reference counter.
  631.  
  632.           However, invoking the /X option with any of the other options
  633.           (/IMRST) allows you to insert line numbers, load $INCLUDEd source
  634.           files, or remove line numbers without having to renumber the
  635.           file.  For example, for debugging purposes, you may insert line
  636.           numbers before non-numbered lines of code without disturbing the
  637.           existing line numbering scheme.
  638.  
  639.           Or, to make the code more readable, you may have QBRENUM remove
  640.           line numbers from non-referenced lines of code without disturbing
  641.           other lines.
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.           The Quick BASIC Renumber Utility                     Page 11
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.           Important Characters and Technical Considerations --------------
  661.  
  662.  
  663.           --------- The Underline Line Extension Character
  664.  
  665.           QBRENUM recognizes the underline character as a line extension
  666.           character. Thus, for example, QBRENUM will treat the following
  667.           three lines as one:
  668.  
  669.                100 IF I = 1 THEN PRINT "YES"_
  670.                             ELSE IF I = 2 THEN PRINT "NO"_
  671.                                           ELSE PRINT "MAYBE"
  672.  
  673.           Please note that the maximum line length supported is 8,200
  674.           characters. 
  675.  
  676.  
  677.           --------- Reserved Characters
  678.  
  679.           QBRENUM uses certain reserved characters as markers to renumber
  680.           source files.  These characters have ASCII values of zero (0),
  681.           twenty-six (26) and twenty-seven (27).  Since most editors will
  682.           not allow you to enter such values, this should not pose any
  683.           problem.  However, if your source file contains any of these
  684.           characters, QBRENUM will not run reliably.
  685.            
  686.  
  687.           --------- System Requirements
  688.            
  689.           The following configuration is the minimum which is required to
  690.           gain access to all of the features of QBRENUM:
  691.  
  692.                * IBM PC family member or Compatible w/128K 
  693.                * One disk drive 
  694.                * A monochrome or color display 
  695.                * A printer
  696.                * PC/MS-DOS version 2.0 or later 
  697.  
  698.  
  699.           --------- IBM Compatible Personal Computers
  700.            
  701.           QBRENUM.COM has been written, assembled and tested on a standard
  702.           IBM PC.  Since it relies mostly on MS-DOS interrupt routines,
  703.           QBRENUM should work well on any IBM compatible personal computer.
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.           The Quick BASIC Renumber Utility                     Page 12
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.           Trouble-shooting with the QBRENUM error messages ---------------
  722.  
  723.           The following list contains most of the error messages that are
  724.           displayed during the execution of the QBRENUM utility.  Each
  725.           error message is followed by a brief description of some of its
  726.           possible causes.
  727.  
  728.  
  729.           Error 1: Renumber region has been illegally defined
  730.            
  731.           QBRENUM was unable to work with the region defined on the command
  732.           line.  Specify the /R option to override this check. 
  733.  
  734.  
  735.           Error 2: Starting line number is too small 
  736.            
  737.           The new starting line number entered on the command line was too
  738.           small: it forced QBRENUM to assign new line numbers in
  739.           non-ascending order.  If this is the desired result, specify the
  740.           /R option on the command line.
  741.            
  742.  
  743.           Error 3: Starting line number is too large
  744.  
  745.           The new starting line number entered on the command line was too
  746.           large: it forced QBRENUM to assign new line numbers in
  747.           non-ascending order.  If this is the desired result, specify the
  748.           /R option on the command line.
  749.  
  750.  
  751.           Error 4: Line number on Pxxxx is too large (max=65535; 32767 /S)
  752.  
  753.           QBRENUM encountered a line number or line reference greater than
  754.           65,535 in the source file.  No output file was created.  QBRENUM
  755.           will not renumber a file that contains such large line numbers.
  756.  
  757.  
  758.           Error 5: Line increment is too large
  759.            
  760.           The new line numbering overlapped with lines of code not in the
  761.           renumber section.  QBRENUM created no output files.  Specify a
  762.           smaller increment.
  763.  
  764.  
  765.           Error 6: Beginning line number of renumber region not found
  766.  
  767.           If you selected the /R option, QBRENUM searched the source files
  768.           for the specified starting line number.  Otherwise, the utility
  769.           searched for the first line number greater than or equal to the
  770.           the specified starting line number.  If your program makes little
  771.           or no use of line numbers, insert a few at the beginning and end
  772.           of the section you want to renumber.
  773.  
  774.           The Quick BASIC Renumber Utility                     Page 13
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.           Error 7: Undefined line reference on line xxxx
  784.  
  785.           QBRENUM encountered a line reference that was not defined in its
  786.           tables.  As a result, the utility left a marker in front of the
  787.           undefined line number in the output file.  QBRENUM leaves a '<u>'
  788.           marker.
  789.  
  790.  
  791.           Error 8: Not enough memory
  792.  
  793.           There was not enough available memory for QBRENUM to renumber
  794.           even the smallest source file.  QBRENUM requires approximately
  795.           32k of memory to renumber a one-line source file. 
  796.  
  797.  
  798.           Error 9: Not enough memory for renumber region
  799.  
  800.           QBRENUM could not store any more entries in its line number
  801.           tables in memory. If the utility runs with less than 96k of
  802.           available memory, then it may need more memory.  Otherwise, the
  803.           file may be too large for QBRENUM.  The utility creates line
  804.           number tables containing as many as 16,383 different entries.  
  805.  
  806.  
  807.           Error 10: Disk full/Unable to Write to file
  808.            
  809.           QBRENUM closed all files and stopped execution.  Clear more space
  810.           on the disk for the output files.
  811.  
  812.  
  813.           Error 11: Numbering on line xxxx is out of sequence
  814.  
  815.           Physical line number xxxx contains a line number that breaks the
  816.           ascending order.  QBRENUM will not renumber this file unless you
  817.           instruct it to ignore the numbering scheme with the /R option.
  818.  
  819.  
  820.           Error 12: Unable to open include file <filename>
  821.  
  822.           QBRENUM could not find or open an include file referenced by an
  823.           $INCLUDE metacommand.  If your program has your compiler load
  824.           many include files, use the FILES=20 command in your CONFIG.SYS
  825.           file.  Then, reboot your computer.  Otherwise, check the current
  826.           directory for the file.  QBRENUM created no output files.
  827.  
  828.  
  829.           Error 13: Unable to create output file <filename>
  830.  
  831.           Check the space left on the disk.  If you are using a floppy
  832.           disk, also check the write-protect tab.
  833.  
  834.  
  835.           The Quick BASIC Renumber Utility                     Page 14
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842.  
  843.           Error 14: Unable to read from include file <filename>
  844.  
  845.           Check the default disk drive.  It may be open.
  846.  
  847.  
  848.           Error 15: Unable to move file pointer in <filename>
  849.  
  850.           Check the default disk drive.  It may be open.
  851.  
  852.  
  853.           Error 16: Line Pxxxxx is too long (max = 8200 bytes)
  854.  
  855.           QBRENUM encountered a line more than than 8,200 bytes long. 
  856.           Since it reads source input files in blocks of 8,200 bytes,
  857.           QBRENUM is unable to renumber files containing lines of such
  858.           lengths.  Shorten the line before re-invoking QBRENUM.
  859.  
  860.  
  861.           Error 17: Incorrect DOS version
  862.  
  863.           QBRENUM operates under MS-DOS versions 2.0 or later.  It does not
  864.           support earlier versions of DOS. 
  865.  
  866.  
  867.           Error 18: File must have .BAS, .BAK or .MOD extension
  868.  
  869.           Because QBRENUM works exclusively on BASIC source files, only
  870.           those files with typical BASIC source file extensions are allowed
  871.           to be specified on the command line. 
  872.  
  873.  
  874.           Error 19: Syntax Error in command line
  875.  
  876.           QBRENUM was unable to process the command line.  Reread the
  877.           utility's short on-line instructions.
  878.            
  879.  
  880.           Error 20: File not found
  881.  
  882.           QBRENUM could not find the source file in the specified directory
  883.           path.
  884.            
  885.  
  886.           Error 22: Number too large on command line (Max=65535) 
  887.  
  888.           QBRENUM encountered a number larger than 65,535 on the command
  889.           line.  No output file was created. 
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.           The Quick BASIC Renumber Utility                     Page 15
  897.  
  898.  
  899.  
  900.  
  901.  
  902.  
  903.  
  904.           BASIC Commands Supported by the Basic Renumber Utility ---------
  905.  
  906.           QBRENUM supports the following BASIC commands that deal directly
  907.           and indirectly with line numbers.  If there are any other or
  908.           special commands not listed here, write me at the address shown
  909.           above.  I will try to include them in a next version.
  910.            
  911.                AUTO [number[,increment]] 
  912.                CHAIN [MERGE] filespec[,[line][,ALL][,DELETE range]]] 
  913.                DELETE [line1][-line2] 
  914.                DELETE [line1-] 
  915.                EDIT line 
  916.                IF ERL = line number THEN... (not) IF line number = ERL
  917.                GOSUB line 
  918.                GOTO line 
  919.                IF expression [,]THEN clause[ELSE clause] 
  920.                IF expression [,]GOTO line[[,]ELSE clause] 
  921.                LIST [line1][-line2]][,filespec] 
  922.                LLIST [line1][-[line2] 
  923.                ON COM(n) GOSUB line 
  924.                ON ERROR GOTO line 
  925.                ON n GOTO line[,line]... 
  926.                ON n GOSUB line[,line]... 
  927.                ON KEY(n) GOSUB line 
  928.                ON PEN GOSUB line 
  929.                ON PLAY(n) GOSUB line 
  930.                ON STRIG(n) GOSUB line 
  931.                ON TIMER(n) GOSUB line 
  932.                RENUM [newnum][,[oldnum][,increment]]
  933.                RESTORE [line]
  934.                RESUME line
  935.                RETURN [line] 
  936.                RUN [line] 
  937.  
  938.           QBRENUM also supports the following BASIC comment and data 
  939.           commands:
  940.  
  941.                REM
  942.                '
  943.                DATA
  944.                COMMON SHARED
  945.  
  946.           QBRENUM also recognizes the following BASIC metacommands:
  947.  
  948.                $DYNAMIC       $LINESIZE:n    $INCLUDE: '<file>'
  949.                $STATIC        $PAGESIZE:n    $TITLE: '<text>'
  950.                $PAGE          $PAGEIF:n      $SUBTITLE: '<text>'
  951.                $LIST{+/-}     $SKIP:n        $MODULE: '<file>'
  952.                $OCODE{+/-}
  953.  
  954.  
  955.  
  956.  
  957.           The Quick BASIC Renumber Utility                     Page 16
  958.